home *** CD-ROM | disk | FTP | other *** search
- 10 rem hidden cavern
- 12 rem by james c.hilty
- 14 poke52,48:poke56,48
- 16 print"[147]":poke53281,15:poke53280,0
- 20 rem title screen
- 22 print:printtab(4)"[144] [146] [146] [146] [223][146] [223][146] [146] [223][146] "
- 24 printtab(4)"[144] [144] [146] [144] [146] [144] [223][146] [144] [223][146] [144] [146] [144] [223][144] "
- 26 printtab(4)"[144] [144] [146] [144] [146] [144] [146] [144] [146] [144] [146] [144] [144] "
- 28 printtab(4)"[144] [144] [146] [144] [146] [144] [144] [146] [144] [144] [146] [144] [144] [146] [144] "
- 30 printtab(4)"[144] [146] [144] [146] [144] [144] [146] [144] [144] [146] [144] [146] [144] "
- 32 printtab(4)"[144] [144] [146] [144] [146] [144] [144] [146] [144] [144] [146] [144] [146] [144] "
- 34 printtab(4)"[144] [144] [146] [144] [146] [144] [146] [144] [146] [144] [144] [146] [144] [146][223] "
- 36 printtab(5)" [146] [146] [146] [146][169] [146][169] [146] [146] [223]"
- 38 print:print
- 40 printtab(6)" [146] [146] [146] [146] [146] [146] [223][146] "
- 42 printtab(6)" [144] [146] [169] [223][146] [144] [144] [146] [144] [146] [144] [144] [146] [223] [144] "
- 44 printtab(6)" [144] [146] [144][169] [144][223][146] [144] [144] [146] [144] [146] [144] [146] [144] "
- 46 printtab(6)" [144] [146] [144] [146] [144] [144] [146] [146] [144] [146] [144] "
- 48 printtab(6)" [144] [146] [144] [144] [146] [144] [144] [146] [144] [146] [146] [144] "
- 52 printtab(6)" [146] [144] [144] [146] [144] [146][169] [146] [144] [144] [146] [144] [146][223][144] "
- 54 printtab(7)"[144] [146] [146] [146] [146] [146] [146] [146] [146] [223]"
- 56 print:printtab(9)"land of the cave globs"
- 60 forl=54272to54295:pokel,0:next:poke54296,15:poke54277,8:poke54278,255
- 62 poke54276,21:f1=2:forz=1to28:f2=80:poke54273,f1:fory=1to5:poke54287,f2
- 64 f2=f2/0.9:nexty:f1=f1+9:nextz:poke54278,15
- 66 printtab(6)"please wait....reading data"
- 68 rem read sprite shape data
- 70 forx=12288to12350:reada:pokex,a:next
- 72 forx=12352to12414:reada:pokex,a:next
- 74 forx=12416to12478:reada:pokex,a:next
- 76 forx=12480to12542:reada:pokex,a:next
- 78 forx=12544to12606:reada:pokex,a:next
- 80 forx=12608to12670:reada:pokex,a:next
- 82 forx=12672to12734:reada:pokex,a:next
- 84 forx=12736to12798:reada:pokex,a:next
- 86 forx=12800to12862:reada:pokex,a:next
- 88 rem read scroll data
- 90 forx=49152to49528:reada:pokex,a:next
- 92 rem read sprite motion routine
- 94 forx=50880to51116:reada:pokex,a:next
- 96 v=53248
- 97 hs=0
- 98 rem set up playing screen
- 99 sc=0:m=0:sh=3
- 100 poke53280,0:poke53281,0:print"[147][159][185][185][185][185][185][185][185] [185][185][185][185][185][185][185] [185][185][185][185][185][185][185][185] [185][185][185][185][185][185][185][185]"
- 102 print"[181]score[182] [181]ships[182] [181]hidden[182] [181]misses[182]"
- 104 print"[184][184][184][184][184][184][184] [184][184][184][184][184][184][184] [181]cavern[182] [184][184][184][184][184][184][184][184]"
- 106 printtab(17)"[184][184][184][184][184][184][184][184]"
- 108 print" "
- 110 printtab(2)" [146] [146] [146] [146] [146] "
- 112 printtab(2)" [146] [146] [146] [146] [146] "
- 114 printtab(3)" [146] [146] [146] [146] [146] "
- 116 printtab(3)" [146] [146][146] [146] [161] [161] "
- 118 printtab(3)" [146] [161] [146] [161] "
- 120 printtab(3)"[161] [161] [146] [180] "
- 122 printtab(3)"[161] [146] [182]"
- 124 printtab(3)"[161] [146] [182]"
- 126 printtab(3)"[161] [146] [182]"
- 128 printtab(19)"[180]"
- 130 print:printtab(11)"[181] [182]"
- 132 printtab(11)"[181] [182]"
- 134 printtab(2)"[161] [146] [161] [182] "
- 136 printtab(2)"[161] [146] [146] "
- 138 printtab(2)" [146] [146] [146] "
- 140 printtab(2)" [146] [146] [146] "
- 142 printtab(2)" [146] [146] [146] "
- 144 print" "
- 146 poke49522,2:poke49523,0:poke49524,38:poke49525,5:poke49526,22
- 148 pokev+39,3:pokev+40,10:pokev+41,13:pokev+42,13:pokev+43,13:pokev+44,13
- 150 pokev+45,7:pokev+46,1
- 152 poke2040,192:poke2041,192:poke2042,196:poke2043,196
- 154 poke2044,197:poke2045,197:poke2046,198:poke2047,199
- 155 pokev+29,60:pokev+23,60
- 156 pokev+0,40:pokev+1,154:pokev+2,50:pokev+3,220
- 158 pokev+4,40:pokev+5,82:pokev+6,200:pokev+7,82
- 160 pokev+8,46:pokev+9,196:pokev+10,230:pokev+11,196
- 162 pokev+14,246:pokev+15,161
- 164 pokev+27,63:pokev+21,191
- 166 poke50433,2:poke50434,254:poke50435,1:poke50436,3
- 168 poke50437,4:poke50438,0:poke50439,4:poke50440,0
- 170 poke50441,4:poke50442,0:poke50443,4:poke50444,0
- 172 poke50445,0:poke50446,0:poke50447,0:poke50448,0
- 175 print" "sc" "sh:print""tab(33)m
- 176 forl=54272to54295:pokel,0:next
- 177 poke54287,15:poke54284,160:poke54285,252
- 178 poke54280,80:poke54279,40:poke54283,129
- 180 w1=peek(v+30):w2=peek(v+31)
- 190 poke50432,255:sys51104
- 199 rem main loop
- 200 jy=peek(56321)and15
- 204 ifjy=13thenpoke50448,1:poke50688,128
- 208 ifjy=14thenpoke50448,255:poke50688,128
- 210 fb=-((peek(56321)and16)=0):iffb=1then300
- 211 sys49152
- 212 w1=peek(v+30):ifw1>128then350
- 214 w2=peek(v+31):ifw2>127then350
- 215 if sc>2500thensys49152
- 216 sc=sc+1:print" "sc
- 218 poke50448,0:poke50688,128
- 219 ifsc>500thensys49152
- 220 goto200
- 300 rem fire
- 304 x=peek(v+14)-20:y=peek(v+15)
- 306 pokev+12,x:pokev+13,y:pokev+21,255
- 307 poke50445,255:poke50688,64:poke50432,64
- 310 c=peek(v+12):ifc<32then320
- 311 w1=peek(v+30):ifpeek(v+30)>64then330
- 312 goto310
- 320 poke50445,0:poke50688,64:poke50432,255:pokev+21,191
- 322 m=m+1:print""tab(33)m:ifm>2then500
- 323 goto200
- 330 rem hit cave glob
- 331 q=192
- 332 pokev+21,191:poke50445,0:poke50688,64
- 334 forx=54272to54295:pokex,0:next:poke54296,15
- 336 poke54277,8:poke54278,255:poke54276,23:f1=202
- 338 forz=1to16:f2=30:q=q+1:ifq=196thenq=192
- 339 poke2040,q:poke2041,q
- 340 poke54273,f1:fory=1to10:poke54287,f2:f2=f2*1.01:nexty:f1=f1-8:nextz
- 344 sc=sc+250:print" "sc
- 346 forx=54272to54295:pokex,0:next
- 347 poke54287,15:poke54284,160:poke54285,252
- 348 poke54280,80:poke54279,40:poke54283,129
- 349 pokev+1,52:pokev+3,220:w1=peek(v+30):poke50432,255:goto200
- 350 rem cave cruiser hit
- 351 poke50432,0
- 352 forx=54272to54295:pokex,0:next:poke54296,15:poke54277,8:poke54278,255
- 354 poke54276,85:f1=100:f2=230
- 356 forz=1to77:poke54272,f1:poke54287,f2
- 358 f2=f2-2:f1=f1*.99:next
- 360 forx=54272to54295:pokex,0:next
- 362 poke54287,15:poke54284,160:poke54285,252
- 363 poke2047,200
- 364 poke54280,80:poke54279,40:poke54283,129:fort=0to1000:next
- 366 forx=54272to54295:pokex,0:next
- 367 sh=sh-1:ifsh=0then500
- 368 pokev+21,63:fort=0to500:next:pokev+21,0:pokev+16,0:goto100
- 500 rem game over-replay
- 501 forl=54272to54295:pokel,0:next
- 502 print"[147][159]":pokev+21,0
- 503 ifsc>hs then hs=sc
- 504 ifm=3thenprint""tab(8)"game over----you missed 3 shots":goto510
- 505 print""tab(8)"game over----you lost 3 ships"
- 510 print""tab(12)"s c o r e ";sc
- 512 print""tab(12)"high score ";hs
- 520 print""tab(12)"play again--y or n"
- 522 get junk$:if junk$<>""then522
- 523 geta$:ifa$=""then523
- 524 ifa$="y"then530
- 526 end
- 530 pokev+21,0:poke50432,0:print"[147]"
- 535 pokev+16,0
- 540 goto99
- 999 rem cave glob sprite data
- 1000 data 0,0,0,0,28,0,0,62,0,0,127,0,0,201,128,0,255,0,0,127,0,2,62,16,2,12
- 1002 data 16,30,12,28,3,255,240,30,14,28,0,15,16,0,31,128
- 1004 data 0,63,192,0,127,192,0,127,192,0,127,224,3,240,127,0,64,8,0,64,8
- 1006 rem cave glob 2
- 1008 data 0,0,0,0,2,128,4,2,128,4,7,192,127,130,24,7,226,60,7,242,118
- 1010 data 3,255,247,3,255,255,3,242,118,3,226,60,3,194,24,7,130,0
- 1012 data 7,7,128,28,7,0,4,5,0,0,5,0,0,0,0,0,0,0,0,0,0,0,0,0
- 1014 rem cave glob 3
- 1016 data 16,2,0,16,2,0,126,15,192,7,254,0,3,254,0,3,254,0,3,252,0
- 1018 data 1,248,0,8,240,0,56,112,120,15,255,192,56,48,120,8,48,64
- 1020 data 8,124,64,0,254,0,1,255,0,1,147,0,0,254,0,0,124,0,0,56,0,0,0,0
- 1022 rem cave glob 4
- 1024 data 0,0,0,0,0,0,0,0,0,0,0,0,0,160,0,0,160,32,0,224,56,1,224,224
- 1026 data 0,65,224,24,67,192,60,71,192,108,79,192,255,255,192,239,255,192
- 1028 data 110,79,224,60,71,224,24,65,252,3,224,32,1,64,32,1,64,0,0,0,0
- 1030 rem upper stalagmite
- 1032 data 255,255,255,255,255,255,240,112,31,240,112,31,240,112,31,224,112,15
- 1034 data 224,96,15,224,96,15,224,96,15,224,0,15,224,0,15,224,0,15
- 1036 data 192,0,7,192,0,7,192,0,7,192,0,3,0,0,3,0,0,3,0,0,3,0,0,3,0,0,3
- 1038 rem lower stalagmite
- 1040 data 32,0,0,32,0,0,32,0,0,96,0,6,96,0,6,96,0,6,224,0,6,224,0,6
- 1042 data 224,0,7,224,0,7,224,128,7,224,128,7,224,128,7,241,192,7,241,192,7
- 1044 data 241,192,7,241,192,7,241,192,7,241,192,7,255,255,255,255,255,255
- 1046 rem torpedoe
- 1048 data 0,0,0,0,0,0,0,0,0,0,0,0,0,24,0,0,153,0,0,90,0,0,60,0,1,255,128
- 1050 data 1,255,128,0,60,0,0,90,0,0,153,0,0,24,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
- 1052 data 0,0,0,0,0,0
- 1054 rem cave cruiser
- 1056 data 0,0,0,0,0,0,0,0,0,0,0,0,0,0,255,0,0,28,0,0,28,0,0,60,0,0,124
- 1058 data 0,0,252,0,1,252,3,255,255,15,255,255,63,255,252
- 1060 data 0,1,252,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0,0
- 1062 rem explosion
- 1064 data 0,0,0,76,1,0,0,128,4,32,4,32,0,48,0,8,0,0,0,32,48,80,0,130
- 1066 data 3,12,0,0,0,4,32,0,128,0,36,0,0,0,192,201,0,4,0,0,0,19,32,192
- 1068 data 0,4,0,32,0,1,4,192,0,0,4,8,0,0,0
- 1070 rem scroll data
- 1072 data 174,114,193,224,3,144,3,76,117,192,188,114,193,140,121,193,174
- 1074 data 118,193,232,202,32,30,193,172,121,193,173,119,193,201,2,208,10
- 1076 data 169,32,72,173,33,208,72,76,50,192,177,90,72,177,92,72,204
- 1078 data 116,193,240,20,200,177,90,72,177,92,136,145,92,104,145,90,200
- 1080 data 204,116,193,208,238,240,18,136,177,90,72,177,92,200,145,92,104
- 1082 data 145,90,136,204,115,193,208,238,173,119,193,201,0,208,5,104,104
- 1084 data 76,111,192,104,145,92,104,145,90,236,117,193,208,160,96,172,116
- 1086 data 193,200,189,114,193,170,32,30,193,173,120,193,201,2,208,19,136
- 1088 data 169,32,153,122,193,173,33,208,153,162,193,204,115,193,208,239,240
- 1090 data 16,136,177,90,153,122,193,177,92,153,162,193,204,115,193,208,240
- 1092 data 236,117,193,240,37,202,32,30,193,172,116,193,200,136,177,90,72
- 1094 data 177,92,32,48,193,145,92,104,145,90,32,56,193,204,115,193,208
- 1096 data 234,236,117,193,208,221,240,46,202,206,118,193,232,32,30,193,172
- 1098 data 116,193,200,136,32,48,193,177,90,72,177,92,32,56,193,145,92
- 1100 data 104,145,90,204,115,193,208,234,236,118,193,208,221,238,118,193,232
- 1102 data 32,30,193,173,120,193,201,0,240,20,172,115,193,136,200,185,162
- 1104 data 193,145,92,185,122,193,145,90,204,116,193,208,240,96,189,89,193
- 1106 data 133,91,24,105,212,133,93,189,64,193,133,90,133,92,96,72,152
- 1108 data 24,105,40,168,104,96,72,152,56,233,40,168,104,96,0,40,80
- 1110 data 120,160,200,240,24,64,104,144,184,224,8,48,88,128,168,208,248
- 1112 data 32,72,112,152,192,4,4,4,4,4,4,4,5,5,5,5,5
- 1114 data 5,6,6,6,6,6,6,6,7,7,7,7,7,3,0,4,0,4,1,1
- 1116 rem sprite motion data
- 1118 data 169,255,45,0,198,240,16,169,0,141,0,198,162,21,189,0
- 1120 data 197,157,0,198,202,208,247,162,1,169,1,141,80,197,173,80
- 1122 data 197,45,0,197,240,3,76,243,198,232,232,14,80,197,208,238,76,49,234
- 1124 data 169,0,29,0,197,208,3,76,97,199,169,128,61
- 1126 data 0,197,240,48,254,0,198,208,40,222,255,207,76,144,199,80
- 1128 data 197,45,16,208,208,12,173,16,208,13,80,197,141,16,208,76
- 1130 data 43,199,173,16,208,77,80,197,141,16,208,189,0,197,157,0
- 1132 data 198,76,97,199,222,0,198,208,40,254,255,207,208,29,173,80
- 1134 data 197,45,16,208,208,12,173,16,208,13,80,197,141,16,208,76
- 1136 data 91,199,173,16,208,77,80,197,141,16,208,189,0,197,157,0
- 1138 data 198,169,0,232,29,0,197,208,3,76,140,199,169,128,61,0
- 1140 data 197,240,11,254,0,198,208,20,222,255,207,76,134,199,222,0
- 1142 data 198,208,9,254,255,207,189,0,197,157,0,198,202,76,233,198
- 1144 data 169,255,221,255,207,240,3,76,43,199,173,80,197,76,17,199
- 1146 data 120,169,192,141,20,3,169,198,141,21,3,88,96
-